The present invention relates generally to computer graphics and animation. More specifically, the present invention is related to systems and methods for creating and using modeless animation control rigs.
Many computer graphic images are created by mathematically modeling the interaction of light with a three dimensional scene from a given viewpoint. This process, called rendering, generates a two-dimensional image of the scene from the given viewpoint, and is analogous to taking a photograph of a real-world scene. Animated sequences can be created by rendering a sequence of images of a scene as the scene is gradually changed over time. A great deal of effort has been devoted to making realistic looking rendered images and animations.
As part of the animation modeling process, it is desirable to directly manipulate objects in a scene to better ensure proper positioning and orientation of objects when an animated scene is displayed. Many current tools exist to facilitate manipulation of objects in a scene. Typically these tools use object control elements to facilitate manipulation of an object. Different object control elements enable different manipulation tasks, such as for example translation, rotation or stretching of a model object.
Prior systems provide tools that allow manipulation of model objects in a scene. These systems typically are shipped with default object control elements tailored to specific tasks. Further, these prior systems are modal, meaning that certain object control elements are only enabled when certain modes of manipulation are selected. For example, certain object control elements may only be usable in a translate mode, and others may only be usable in a rotate mode. This requires users to switch between modes of manipulation to access and use desired object control elements. This can be tedious and inefficient for users desiring to manipulate an object, especially where different object control element types need to be used during a manipulation.
Therefore it is desirable to provide systems and methods that overcome the above and other problems and/or that reduce some of the drawbacks of prior systems.